Subject: Re: MINIX
From: [email-masked] (Andy Tanenbaum)
Date: 12 Jan 87 12:00:41 GMT
Newsgroups: comp.sys.ibm.pc

John Diamant has asked what the difference between the various MINIX packages
is.  Here is a brief rundown.  The binary of the operating system is identical
on the 256K and 640K PC version.  The only difference is that the binary of
the C compiler has been deleted from the 256K version because some of the
passes are normally kept on the RAM disk, and with only 256K, the RAM disk is
too small to hold them. I just deleted the whole compiler, thus freeing up a
little extra space on the /usr diskette.

There are 3 differences between the 640K PC version and the 512K AT version:
1. The binary for the PC version has a hard disk driver for the XT type disk
   embedded in it.  The binary for the AT version has the AT type disk driver.
   Both versions contain the source code for both the XT and AT drivers, so
   if you upgrade your XT to an AT, you just have to recompile with the other
   driver.

2. The AT version comes on five 1.2M diskettes instead of eight 360K diskettes.
   The source programs present on both are identical.

3. The initial configuration of what is on the /usr diskette and what is on
   the RAM disk is different.  The compiler passes won't fit on the RAM disk
   here either with only 512K, but there is plenty of room on the 1.2M floppies.

If you have a 256K or 384K machine and a friend has a 640K machine, get the
640K system and make a new root file system (for the RAM disk) yourself using
mkfs.  About 55K is the right size, and it should contain the same /etc and
/dev as the 640K system; /bin should have only: getlf, sh, and sync.
If you have 256K and two floppy disks or a hard disk, you can also copy the
C compiler to a second file system, but you have to fix and recompile the little
driving program cc.c because the paths of the compiler passes are built into
it.  If you are going to put the compiler passes in /user/lib or somewhere
else, you have to change cc.c so it knows which files to EXEC.  When moving
the 640K PC system to a 512K AT you have to make the same change. 
As distributed, cc.c won't compile because I have intentionally included a
line saying: !!!!_SEE_BELOW_!!!   on line 30 to attract your attention to the
comment explaining all this.

In summary, you can use the 640K system to reconstruct a RAM disk (root device)
for 256K or 384K or any other size using mkfs.  You don't have to recompile
the operating system.  The reason for two different sets is that the RAM disk
image (diskette #2) is different for 256K and 640K as described above.  The
only kernel tuning utility is chmem, which changes the amount of stack space
allocated to a program.

The mag tape has all the sources but no binaries at all.  It was intended for
university courses on operating systems that have to use a VAX for the student
projects.  The tape contains a simulator for the IBM PC (8088 interpreter plus
some I/O device simulation) so students can modify MINIX on the VAX and run
it on the PC simulator.  I would be less than honest to suggest that 
interpreting a PC on a VAX is blindingly fast, but if you compile the C to
assembly code and then patch up the main decode loop by hand and hack away at
the condition code routine, you can help somewhat.  The tape also contains
software to run the file-system-only via a pipe to a test program.  This
runs at normal speed, but only allows the students to test the file system.
Neither of these directories are available on diskette.  The complete PC
simulator is not a real small program :-)  I have found the simulator very
useful for debugging however, as it has a wealth of options for tracing,
breakpoints, and other debugging.

I have had a lot of mail asking about uucp.  I don't have one.  If anyone has
a version that runs on V7 and isn't huge and works (a tall order), let me
know or post it.

There was also some discussion about whether or not B. Dalton deals in 
textbooks.  They certainly do.  I have bought many textbooks at some of their
stores.  The problem is this.  Prentice-Hall, Addison-Wesley, and similar
publishers mostly sell to college book stores.  The discount off list price is
based on the way college book stores work.  B. Dalton simply says "We are big
and we want a bigger discount."  This causes friction.  Sometimes B. Dalton
gives in, sometimes the publisher gives in, and sometimes nobody gives in.
If your local B. Dalton refuses to order the book, try a college book store,
or Prentice-Hall's mail order dept.

Andy Tanenbaum